package com.pj.project4sp.sp_project;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.pj.utils.sg.*;

/**
 * 工具类：sp_project -- 计划表
 * @author lh 
 *
 */
@Component
public class SpProjectUtil {

	
	/** 底层 Mapper 对象 */
	public static SpProjectMapper spProjectMapper;
	@Autowired
	private void setSpProjectMapper(SpProjectMapper spProjectMapper) {
		SpProjectUtil.spProjectMapper = spProjectMapper;
	}
	
	
	/** 
	 * 将一个 SpProject 对象进行进行数据完整性校验 (方便add/update等接口数据校验) [G] 
	 */
	static void check(SpProject s) {
		AjaxError.throwByIsNull(s.id, "[id，--主键、自增] 不能为空");		// 验证: id，--主键、自增 
		AjaxError.throwByIsNull(s.menuId, "[项目] 不能为空");		// 验证: 项目 
		AjaxError.throwByIsNull(s.name, "[名称] 不能为空");		// 验证: 名称 
		AjaxError.throwByIsNull(s.phase, "[阶段] 不能为空");		// 验证: 阶段 
		AjaxError.throwByIsNull(s.smallPhase, "[小阶段] 不能为空");		// 验证: 小阶段 
		AjaxError.throwByIsNull(s.startTime, "[开始时间] 不能为空");		// 验证: 开始时间 
		AjaxError.throwByIsNull(s.endTime, "[结束时间] 不能为空");		// 验证: 结束时间 
		AjaxError.throwByIsNull(s.actualStartTime, "[实际开始时间] 不能为空");		// 验证: 实际开始时间 
		AjaxError.throwByIsNull(s.actualEndTime, "[实际结束时间] 不能为空");		// 验证: 实际结束时间 
		AjaxError.throwByIsNull(s.cost, "[计划耗资] 不能为空");		// 验证: 计划耗资 
		AjaxError.throwByIsNull(s.supplies, "[物资清单] 不能为空");		// 验证: 物资清单 
		AjaxError.throwByIsNull(s.collaborativeContent, "[协作内容] 不能为空");		// 验证: 协作内容 
		AjaxError.throwByIsNull(s.createTime, "[创建时间] 不能为空");		// 验证: 创建时间 
	}

	/** 
	 * 获取一个SpProject (方便复制代码用) [G] 
	 */ 
	static SpProject getSpProject() {
		SpProject s = new SpProject();	// 声明对象 
		s.id = 0L;		// id，--主键、自增 
		s.menuId = 0L;		// 项目 
		s.name = "";		// 名称 
		s.phase = 0L;		// 阶段 
		s.smallPhase = 0L;		// 小阶段
		s.cost = "";		// 计划耗资 
		s.supplies = "";		// 物资清单 
		s.collaborativeContent = "";		// 协作内容
		return s;
	}
	
	
	
	
	
}
